/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.navid.trafalgar.definition;

import com.jme3.material.TechniqueDef.ShadowMode;
import java.util.ArrayList;
import java.util.Collection;

/**
 *
 * @author alberto
 */
public class TerrainDefinition {
    
    private String material;
    
    private Collection<TextureDefinition> textures = new ArrayList<TextureDefinition>() ;
    
    private Collection<Entry<String, Boolean>> booleans = new ArrayList<Entry<String, Boolean>>();
    
    private int terrainPatchSize;
    
    private int totalPathSize;
    
    private String terrainHeightImage;
    
    private float terrainHeightScale;
    
    private float[] localScale;
    
    private float[] localTranslation;
    
    private boolean locked;
    
    private ShadowMode shadowMode;

    /**
     * @return the material
     */
    public String getMaterial() {
        return material;
    }

    /**
     * @param material the material to set
     */
    public void setMaterial(String material) {
        this.material = material;
    }

    /**
     * @return the textures
     */
    public Collection<TextureDefinition> getTextures() {
        return textures;
    }

    /**
     * @param textures the textures to set
     */
    public void setTextures(Collection<TextureDefinition> textures) {
        this.textures = textures;
    }

    /**
     * @return the booleans
     */
    public Collection<Entry<String, Boolean>> getBooleans() {
        return booleans;
    }

    /**
     * @param booleans the booleans to set
     */
    public void setBooleans(Collection<Entry<String, Boolean>> booleans) {
        this.booleans = booleans;
    }

    /**
     * @return the terrainPatchSize
     */
    public int getTerrainPatchSize() {
        return terrainPatchSize;
    }

    /**
     * @param terrainPatchSize the terrainPatchSize to set
     */
    public void setTerrainPatchSize(int terrainPatchSize) {
        this.terrainPatchSize = terrainPatchSize;
    }

    /**
     * @return the totalPathSize
     */
    public int getTotalPathSize() {
        return totalPathSize;
    }

    /**
     * @param totalPathSize the totalPathSize to set
     */
    public void setTotalPathSize(int totalPathSize) {
        this.totalPathSize = totalPathSize;
    }

    /**
     * @return the terrainHeightImage
     */
    public String getTerrainHeightImage() {
        return terrainHeightImage;
    }

    /**
     * @param terrainHeightImage the terrainHeightImage to set
     */
    public void setTerrainHeightImage(String terrainHeightImage) {
        this.terrainHeightImage = terrainHeightImage;
    }

    /**
     * @return the terrainHeightScale
     */
    public float getTerrainHeightScale() {
        return terrainHeightScale;
    }

    /**
     * @param terrainHeightScale the terrainHeightScale to set
     */
    public void setTerrainHeightScale(float terrainHeightScale) {
        this.terrainHeightScale = terrainHeightScale;
    }

    /**
     * @return the localScale
     */
    public float[] getLocalScale() {
        return localScale;
    }

    /**
     * @param localScale the localScale to set
     */
    public void setLocalScale(float[] localScale) {
        this.localScale = localScale;
    }

    /**
     * @return the localTranslation
     */
    public float[] getLocalTranslation() {
        return localTranslation;
    }

    /**
     * @param localTranslation the localTranslation to set
     */
    public void setLocalTranslation(float[] localTranslation) {
        this.localTranslation = localTranslation;
    }

    /**
     * @return the locked
     */
    public boolean isLocked() {
        return locked;
    }

    /**
     * @param locked the locked to set
     */
    public void setLocked(boolean locked) {
        this.locked = locked;
    }

    /**
     * @return the shadowMode
     */
    public ShadowMode getShadowMode() {
        return shadowMode;
    }

    /**
     * @param shadowMode the shadowMode to set
     */
    public void setShadowMode(ShadowMode shadowMode) {
        this.shadowMode = shadowMode;
    }
    
}
